home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Mac Game Programming Gurus / TricksOfTheMacGameProgrammingGurus.iso / More Source / C⁄C++ / Xconq 7.0d37 / source / lib / ng-weird.g < prev    next >
Text File  |  1994-02-04  |  2KB  |  63 lines

  1. ;;; This is a generic "pronounceable name" generator.
  2. ;;; Doesn't have any particular flavor, although the weights are
  3. ;;; tilted towards English.
  4.  
  5. (namer generic-names (grammar root 10
  6.   (root (or 5 (syllable " " root)
  7.            30 (syllable syllable)
  8.            20 (syllable syllable syllable)
  9.            50 (syllable root)))
  10.   (syllable (or (start vowel) (vowel end) 3 (start vowel end)))
  11.   (start (or 3 initdiph 7 consonant))
  12.   (end (or 2 enddiph 8 consonant))
  13.   (vowel (or 5 a 9 e 2 i 3 o 2 u y))
  14.   (consonant (or
  15.      2 b 2 c 3 d 2 f 2 g 3 h   j 2 k 3 l 3 m
  16.      6 n 3 p 4 r 5 s 9 t 2 v 2 w   x       z))
  17.   (initdiph (or 
  18.     bl cl    fl gl kl pl sl
  19.     br cr dr fr gr kr pr    3 tr wr 
  20.     3 ch ph rh 3 sh 3 th wh
  21.     2 sm 2 sp 4 st sw
  22.     ))
  23.   (enddiph (or
  24.     lb ld lf lg lk ll lm ln lp    ls lt
  25.     rb rd rf rg rk rl rm rn rp rr rs rt
  26.     mp
  27.     3 nd 2 ng nk 3 nt
  28.     gh
  29.     ))
  30. ))
  31.  
  32. (namer short-generic-names (grammar root 10
  33.   (root (or 10 (syllable " " (capitalize root))
  34.            50 (syllable syllable)
  35.            5 (start vowel end)
  36.            5 (syllable syllable syllable)
  37.            5 (syllable root)))
  38.   (syllable (or (start vowel) (vowel end) 3 (start vowel end)))
  39.   (start (or 1 initdiph 7 initconsonant))
  40.   (end (or 1 enddiph 8 endconsonant))
  41.   (vowel (or 5 a 9 e 2 i 3 o 2 u y))
  42.   (initconsonant (or
  43.      2 b 2 c 3 d 2 f 2 g 3 h   j 2 k 3 l 3 m
  44.      6 n 3 p 4 r 5 s 9 t 2 v 2 w         z))
  45.   (endconsonant (or
  46.      2 b 2 c 3 d 2 f 2 g      2 k 3 l 3 m
  47.      6 n 3 p 4 r 5 s 9 t 2 v 2 w   x       z))
  48.   (initdiph (or 
  49.     bl cl    fl gl kl pl sl
  50.     br cr 2 dr fr gr kr 2 pr    3 tr 2 wr 
  51.     3 ch ph rh 3 sh 3 th wh
  52.     2 sm 2 sp 4 st sw
  53.     ))
  54.   (enddiph (or
  55.     ld lf lk ll lm ln lp    ls lt
  56.     rb 2 rd rf rg rk rl rm rn rp rr rs 2 rt
  57.     2 mp
  58.     3 nd 2 ng nk 3 nt
  59.     gh
  60.     ))
  61. ))
  62.  
  63.